﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020014E9 RID: 5353
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class Vector : IMessage<Vector>, IMessage, IEquatable<Vector>, IDeepCloneable<Vector>, IBufferMessage
	{
		// Token: 0x1700436A RID: 17258
		// (get) Token: 0x0600EF7E RID: 61310 RVA: 0x0027FA38 File Offset: 0x0027DC38
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<Vector> Parser
		{
			get
			{
				return Vector._parser;
			}
		}

		// Token: 0x1700436B RID: 17259
		// (get) Token: 0x0600EF7F RID: 61311 RVA: 0x0027FA3F File Offset: 0x0027DC3F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return VectorReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x1700436C RID: 17260
		// (get) Token: 0x0600EF80 RID: 61312 RVA: 0x0027FA51 File Offset: 0x0027DC51
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return Vector.Descriptor;
			}
		}

		// Token: 0x0600EF81 RID: 61313 RVA: 0x0027FA58 File Offset: 0x0027DC58
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public Vector()
		{
		}

		// Token: 0x0600EF82 RID: 61314 RVA: 0x0027FA60 File Offset: 0x0027DC60
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public Vector(Vector other) : this()
		{
			this.x_ = other.x_;
			this.y_ = other.y_;
			this.z_ = other.z_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600EF83 RID: 61315 RVA: 0x0027FA9D File Offset: 0x0027DC9D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public Vector Clone()
		{
			return new Vector(this);
		}

		// Token: 0x1700436D RID: 17261
		// (get) Token: 0x0600EF84 RID: 61316 RVA: 0x0027FAA5 File Offset: 0x0027DCA5
		// (set) Token: 0x0600EF85 RID: 61317 RVA: 0x0027FAAD File Offset: 0x0027DCAD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int X
		{
			get
			{
				return this.x_;
			}
			set
			{
				this.x_ = value;
			}
		}

		// Token: 0x1700436E RID: 17262
		// (get) Token: 0x0600EF86 RID: 61318 RVA: 0x0027FAB6 File Offset: 0x0027DCB6
		// (set) Token: 0x0600EF87 RID: 61319 RVA: 0x0027FABE File Offset: 0x0027DCBE
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int Y
		{
			get
			{
				return this.y_;
			}
			set
			{
				this.y_ = value;
			}
		}

		// Token: 0x1700436F RID: 17263
		// (get) Token: 0x0600EF88 RID: 61320 RVA: 0x0027FAC7 File Offset: 0x0027DCC7
		// (set) Token: 0x0600EF89 RID: 61321 RVA: 0x0027FACF File Offset: 0x0027DCCF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int Z
		{
			get
			{
				return this.z_;
			}
			set
			{
				this.z_ = value;
			}
		}

		// Token: 0x0600EF8A RID: 61322 RVA: 0x0027FAD8 File Offset: 0x0027DCD8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as Vector);
		}

		// Token: 0x0600EF8B RID: 61323 RVA: 0x0027FAE8 File Offset: 0x0027DCE8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(Vector other)
		{
			return other != null && (other == this || (this.X == other.X && this.Y == other.Y && this.Z == other.Z && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600EF8C RID: 61324 RVA: 0x0027FB44 File Offset: 0x0027DD44
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.X != 0)
			{
				num ^= this.X.GetHashCode();
			}
			if (this.Y != 0)
			{
				num ^= this.Y.GetHashCode();
			}
			if (this.Z != 0)
			{
				num ^= this.Z.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600EF8D RID: 61325 RVA: 0x0027FBB5 File Offset: 0x0027DDB5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600EF8E RID: 61326 RVA: 0x0027FBBD File Offset: 0x0027DDBD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600EF8F RID: 61327 RVA: 0x0027FBC8 File Offset: 0x0027DDC8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.X != 0)
			{
				output.WriteRawTag(8);
				output.WriteSInt32(this.X);
			}
			if (this.Z != 0)
			{
				output.WriteRawTag(32);
				output.WriteSInt32(this.Z);
			}
			if (this.Y != 0)
			{
				output.WriteRawTag(72);
				output.WriteSInt32(this.Y);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600EF90 RID: 61328 RVA: 0x0027FC3C File Offset: 0x0027DE3C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.X != 0)
			{
				num += 1 + CodedOutputStream.ComputeSInt32Size(this.X);
			}
			if (this.Y != 0)
			{
				num += 1 + CodedOutputStream.ComputeSInt32Size(this.Y);
			}
			if (this.Z != 0)
			{
				num += 1 + CodedOutputStream.ComputeSInt32Size(this.Z);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600EF91 RID: 61329 RVA: 0x0027FCAC File Offset: 0x0027DEAC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(Vector other)
		{
			if (other == null)
			{
				return;
			}
			if (other.X != 0)
			{
				this.X = other.X;
			}
			if (other.Y != 0)
			{
				this.Y = other.Y;
			}
			if (other.Z != 0)
			{
				this.Z = other.Z;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600EF92 RID: 61330 RVA: 0x0027FD10 File Offset: 0x0027DF10
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600EF93 RID: 61331 RVA: 0x0027FD1C File Offset: 0x0027DF1C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 8U)
				{
					if (num != 32U)
					{
						if (num != 72U)
						{
							this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
						}
						else
						{
							this.Y = input.ReadSInt32();
						}
					}
					else
					{
						this.Z = input.ReadSInt32();
					}
				}
				else
				{
					this.X = input.ReadSInt32();
				}
			}
		}

		// Token: 0x04005EA2 RID: 24226
		private static readonly MessageParser<Vector> _parser = new MessageParser<Vector>(() => new Vector());

		// Token: 0x04005EA3 RID: 24227
		private UnknownFieldSet _unknownFields;

		// Token: 0x04005EA4 RID: 24228
		public const int XFieldNumber = 1;

		// Token: 0x04005EA5 RID: 24229
		private int x_;

		// Token: 0x04005EA6 RID: 24230
		public const int YFieldNumber = 9;

		// Token: 0x04005EA7 RID: 24231
		private int y_;

		// Token: 0x04005EA8 RID: 24232
		public const int ZFieldNumber = 4;

		// Token: 0x04005EA9 RID: 24233
		private int z_;
	}
}
